package com.ls.fw.frame.api.model.example;

import java.util.ArrayList;
import java.util.Date;
import java.util.List;

public class ApiAccessLogExample {
    protected String orderByClause;

    protected boolean distinct;

    protected List<Criteria> oredCriteria;

    public ApiAccessLogExample() {
        oredCriteria = new ArrayList<Criteria>();
    }

    public void setOrderByClause(String orderByClause) {
        this.orderByClause = orderByClause;
    }

    public String getOrderByClause() {
        return orderByClause;
    }

    public void setDistinct(boolean distinct) {
        this.distinct = distinct;
    }

    public boolean isDistinct() {
        return distinct;
    }

    public List<Criteria> getOredCriteria() {
        return oredCriteria;
    }

    public void or(Criteria criteria) {
        oredCriteria.add(criteria);
    }

    public Criteria or() {
        Criteria criteria = createCriteriaInternal();
        oredCriteria.add(criteria);
        return criteria;
    }

    public Criteria createCriteria() {
        Criteria criteria = createCriteriaInternal();
        if (oredCriteria.size() == 0) {
            oredCriteria.add(criteria);
        }
        return criteria;
    }

    protected Criteria createCriteriaInternal() {
        Criteria criteria = new Criteria();
        return criteria;
    }

    public void clear() {
        oredCriteria.clear();
        orderByClause = null;
        distinct = false;
    }

    protected abstract static class GeneratedCriteria {
        protected List<Criterion> criteria;

        protected GeneratedCriteria() {
            super();
            criteria = new ArrayList<Criterion>();
        }

        public boolean isValid() {
            return criteria.size() > 0;
        }

        public List<Criterion> getAllCriteria() {
            return criteria;
        }

        public List<Criterion> getCriteria() {
            return criteria;
        }

        protected void addCriterion(String condition) {
            if (condition == null) {
                throw new RuntimeException("Value for condition cannot be null");
            }
            criteria.add(new Criterion(condition));
        }

        protected void addCriterion(String condition, Object value, String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value));
        }

        protected void addCriterion(String condition, Object value1, Object value2, String property) {
            if (value1 == null || value2 == null) {
                throw new RuntimeException("Between values for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value1, value2));
        }

        public Criteria andIdIsNull() {
            addCriterion("id is null");
            return (Criteria) this;
        }

        public Criteria andIdIsNotNull() {
            addCriterion("id is not null");
            return (Criteria) this;
        }

        public Criteria andIdEqualTo(Long value) {
            addCriterion("id =", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotEqualTo(Long value) {
            addCriterion("id <>", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdGreaterThan(Long value) {
            addCriterion("id >", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdGreaterThanOrEqualTo(Long value) {
            addCriterion("id >=", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdLessThan(Long value) {
            addCriterion("id <", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdLessThanOrEqualTo(Long value) {
            addCriterion("id <=", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdIn(List<Long> values) {
            addCriterion("id in", values, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotIn(List<Long> values) {
            addCriterion("id not in", values, "id");
            return (Criteria) this;
        }

        public Criteria andIdBetween(Long value1, Long value2) {
            addCriterion("id between", value1, value2, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotBetween(Long value1, Long value2) {
            addCriterion("id not between", value1, value2, "id");
            return (Criteria) this;
        }

        public Criteria andRequestDtIsNull() {
            addCriterion("request_dt is null");
            return (Criteria) this;
        }

        public Criteria andRequestDtIsNotNull() {
            addCriterion("request_dt is not null");
            return (Criteria) this;
        }

        public Criteria andRequestDtEqualTo(Date value) {
            addCriterion("request_dt =", value, "requestDt");
            return (Criteria) this;
        }

        public Criteria andRequestDtNotEqualTo(Date value) {
            addCriterion("request_dt <>", value, "requestDt");
            return (Criteria) this;
        }

        public Criteria andRequestDtGreaterThan(Date value) {
            addCriterion("request_dt >", value, "requestDt");
            return (Criteria) this;
        }

        public Criteria andRequestDtGreaterThanOrEqualTo(Date value) {
            addCriterion("request_dt >=", value, "requestDt");
            return (Criteria) this;
        }

        public Criteria andRequestDtLessThan(Date value) {
            addCriterion("request_dt <", value, "requestDt");
            return (Criteria) this;
        }

        public Criteria andRequestDtLessThanOrEqualTo(Date value) {
            addCriterion("request_dt <=", value, "requestDt");
            return (Criteria) this;
        }

        public Criteria andRequestDtIn(List<Date> values) {
            addCriterion("request_dt in", values, "requestDt");
            return (Criteria) this;
        }

        public Criteria andRequestDtNotIn(List<Date> values) {
            addCriterion("request_dt not in", values, "requestDt");
            return (Criteria) this;
        }

        public Criteria andRequestDtBetween(Date value1, Date value2) {
            addCriterion("request_dt between", value1, value2, "requestDt");
            return (Criteria) this;
        }

        public Criteria andRequestDtNotBetween(Date value1, Date value2) {
            addCriterion("request_dt not between", value1, value2, "requestDt");
            return (Criteria) this;
        }

        public Criteria andResponseDtIsNull() {
            addCriterion("response_dt is null");
            return (Criteria) this;
        }

        public Criteria andResponseDtIsNotNull() {
            addCriterion("response_dt is not null");
            return (Criteria) this;
        }

        public Criteria andResponseDtEqualTo(Date value) {
            addCriterion("response_dt =", value, "responseDt");
            return (Criteria) this;
        }

        public Criteria andResponseDtNotEqualTo(Date value) {
            addCriterion("response_dt <>", value, "responseDt");
            return (Criteria) this;
        }

        public Criteria andResponseDtGreaterThan(Date value) {
            addCriterion("response_dt >", value, "responseDt");
            return (Criteria) this;
        }

        public Criteria andResponseDtGreaterThanOrEqualTo(Date value) {
            addCriterion("response_dt >=", value, "responseDt");
            return (Criteria) this;
        }

        public Criteria andResponseDtLessThan(Date value) {
            addCriterion("response_dt <", value, "responseDt");
            return (Criteria) this;
        }

        public Criteria andResponseDtLessThanOrEqualTo(Date value) {
            addCriterion("response_dt <=", value, "responseDt");
            return (Criteria) this;
        }

        public Criteria andResponseDtIn(List<Date> values) {
            addCriterion("response_dt in", values, "responseDt");
            return (Criteria) this;
        }

        public Criteria andResponseDtNotIn(List<Date> values) {
            addCriterion("response_dt not in", values, "responseDt");
            return (Criteria) this;
        }

        public Criteria andResponseDtBetween(Date value1, Date value2) {
            addCriterion("response_dt between", value1, value2, "responseDt");
            return (Criteria) this;
        }

        public Criteria andResponseDtNotBetween(Date value1, Date value2) {
            addCriterion("response_dt not between", value1, value2, "responseDt");
            return (Criteria) this;
        }

        public Criteria andRequestIpIsNull() {
            addCriterion("request_ip is null");
            return (Criteria) this;
        }

        public Criteria andRequestIpIsNotNull() {
            addCriterion("request_ip is not null");
            return (Criteria) this;
        }

        public Criteria andRequestIpEqualTo(String value) {
            addCriterion("request_ip =", value, "requestIp");
            return (Criteria) this;
        }

        public Criteria andRequestIpNotEqualTo(String value) {
            addCriterion("request_ip <>", value, "requestIp");
            return (Criteria) this;
        }

        public Criteria andRequestIpGreaterThan(String value) {
            addCriterion("request_ip >", value, "requestIp");
            return (Criteria) this;
        }

        public Criteria andRequestIpGreaterThanOrEqualTo(String value) {
            addCriterion("request_ip >=", value, "requestIp");
            return (Criteria) this;
        }

        public Criteria andRequestIpLessThan(String value) {
            addCriterion("request_ip <", value, "requestIp");
            return (Criteria) this;
        }

        public Criteria andRequestIpLessThanOrEqualTo(String value) {
            addCriterion("request_ip <=", value, "requestIp");
            return (Criteria) this;
        }

        public Criteria andRequestIpLike(String value) {
            addCriterion("request_ip like", value, "requestIp");
            return (Criteria) this;
        }

        public Criteria andRequestIpNotLike(String value) {
            addCriterion("request_ip not like", value, "requestIp");
            return (Criteria) this;
        }

        public Criteria andRequestIpIn(List<String> values) {
            addCriterion("request_ip in", values, "requestIp");
            return (Criteria) this;
        }

        public Criteria andRequestIpNotIn(List<String> values) {
            addCriterion("request_ip not in", values, "requestIp");
            return (Criteria) this;
        }

        public Criteria andRequestIpBetween(String value1, String value2) {
            addCriterion("request_ip between", value1, value2, "requestIp");
            return (Criteria) this;
        }

        public Criteria andRequestIpNotBetween(String value1, String value2) {
            addCriterion("request_ip not between", value1, value2, "requestIp");
            return (Criteria) this;
        }

        public Criteria andMethodIsNull() {
            addCriterion("method is null");
            return (Criteria) this;
        }

        public Criteria andMethodIsNotNull() {
            addCriterion("method is not null");
            return (Criteria) this;
        }

        public Criteria andMethodEqualTo(String value) {
            addCriterion("method =", value, "method");
            return (Criteria) this;
        }

        public Criteria andMethodNotEqualTo(String value) {
            addCriterion("method <>", value, "method");
            return (Criteria) this;
        }

        public Criteria andMethodGreaterThan(String value) {
            addCriterion("method >", value, "method");
            return (Criteria) this;
        }

        public Criteria andMethodGreaterThanOrEqualTo(String value) {
            addCriterion("method >=", value, "method");
            return (Criteria) this;
        }

        public Criteria andMethodLessThan(String value) {
            addCriterion("method <", value, "method");
            return (Criteria) this;
        }

        public Criteria andMethodLessThanOrEqualTo(String value) {
            addCriterion("method <=", value, "method");
            return (Criteria) this;
        }

        public Criteria andMethodLike(String value) {
            addCriterion("method like", value, "method");
            return (Criteria) this;
        }

        public Criteria andMethodNotLike(String value) {
            addCriterion("method not like", value, "method");
            return (Criteria) this;
        }

        public Criteria andMethodIn(List<String> values) {
            addCriterion("method in", values, "method");
            return (Criteria) this;
        }

        public Criteria andMethodNotIn(List<String> values) {
            addCriterion("method not in", values, "method");
            return (Criteria) this;
        }

        public Criteria andMethodBetween(String value1, String value2) {
            addCriterion("method between", value1, value2, "method");
            return (Criteria) this;
        }

        public Criteria andMethodNotBetween(String value1, String value2) {
            addCriterion("method not between", value1, value2, "method");
            return (Criteria) this;
        }

        public Criteria andApiTypeIsNull() {
            addCriterion("api_type is null");
            return (Criteria) this;
        }

        public Criteria andApiTypeIsNotNull() {
            addCriterion("api_type is not null");
            return (Criteria) this;
        }

        public Criteria andApiTypeEqualTo(String value) {
            addCriterion("api_type =", value, "apiType");
            return (Criteria) this;
        }

        public Criteria andApiTypeNotEqualTo(String value) {
            addCriterion("api_type <>", value, "apiType");
            return (Criteria) this;
        }

        public Criteria andApiTypeGreaterThan(String value) {
            addCriterion("api_type >", value, "apiType");
            return (Criteria) this;
        }

        public Criteria andApiTypeGreaterThanOrEqualTo(String value) {
            addCriterion("api_type >=", value, "apiType");
            return (Criteria) this;
        }

        public Criteria andApiTypeLessThan(String value) {
            addCriterion("api_type <", value, "apiType");
            return (Criteria) this;
        }

        public Criteria andApiTypeLessThanOrEqualTo(String value) {
            addCriterion("api_type <=", value, "apiType");
            return (Criteria) this;
        }

        public Criteria andApiTypeLike(String value) {
            addCriterion("api_type like", value, "apiType");
            return (Criteria) this;
        }

        public Criteria andApiTypeNotLike(String value) {
            addCriterion("api_type not like", value, "apiType");
            return (Criteria) this;
        }

        public Criteria andApiTypeIn(List<String> values) {
            addCriterion("api_type in", values, "apiType");
            return (Criteria) this;
        }

        public Criteria andApiTypeNotIn(List<String> values) {
            addCriterion("api_type not in", values, "apiType");
            return (Criteria) this;
        }

        public Criteria andApiTypeBetween(String value1, String value2) {
            addCriterion("api_type between", value1, value2, "apiType");
            return (Criteria) this;
        }

        public Criteria andApiTypeNotBetween(String value1, String value2) {
            addCriterion("api_type not between", value1, value2, "apiType");
            return (Criteria) this;
        }

        public Criteria andApiAccountIdIsNull() {
            addCriterion("api_account_id is null");
            return (Criteria) this;
        }

        public Criteria andApiAccountIdIsNotNull() {
            addCriterion("api_account_id is not null");
            return (Criteria) this;
        }

        public Criteria andApiAccountIdEqualTo(Long value) {
            addCriterion("api_account_id =", value, "apiAccountId");
            return (Criteria) this;
        }

        public Criteria andApiAccountIdNotEqualTo(Long value) {
            addCriterion("api_account_id <>", value, "apiAccountId");
            return (Criteria) this;
        }

        public Criteria andApiAccountIdGreaterThan(Long value) {
            addCriterion("api_account_id >", value, "apiAccountId");
            return (Criteria) this;
        }

        public Criteria andApiAccountIdGreaterThanOrEqualTo(Long value) {
            addCriterion("api_account_id >=", value, "apiAccountId");
            return (Criteria) this;
        }

        public Criteria andApiAccountIdLessThan(Long value) {
            addCriterion("api_account_id <", value, "apiAccountId");
            return (Criteria) this;
        }

        public Criteria andApiAccountIdLessThanOrEqualTo(Long value) {
            addCriterion("api_account_id <=", value, "apiAccountId");
            return (Criteria) this;
        }

        public Criteria andApiAccountIdIn(List<Long> values) {
            addCriterion("api_account_id in", values, "apiAccountId");
            return (Criteria) this;
        }

        public Criteria andApiAccountIdNotIn(List<Long> values) {
            addCriterion("api_account_id not in", values, "apiAccountId");
            return (Criteria) this;
        }

        public Criteria andApiAccountIdBetween(Long value1, Long value2) {
            addCriterion("api_account_id between", value1, value2, "apiAccountId");
            return (Criteria) this;
        }

        public Criteria andApiAccountIdNotBetween(Long value1, Long value2) {
            addCriterion("api_account_id not between", value1, value2, "apiAccountId");
            return (Criteria) this;
        }

        public Criteria andModUserIsNull() {
            addCriterion("mod_user is null");
            return (Criteria) this;
        }

        public Criteria andModUserIsNotNull() {
            addCriterion("mod_user is not null");
            return (Criteria) this;
        }

        public Criteria andModUserEqualTo(String value) {
            addCriterion("mod_user =", value, "modUser");
            return (Criteria) this;
        }

        public Criteria andModUserNotEqualTo(String value) {
            addCriterion("mod_user <>", value, "modUser");
            return (Criteria) this;
        }

        public Criteria andModUserGreaterThan(String value) {
            addCriterion("mod_user >", value, "modUser");
            return (Criteria) this;
        }

        public Criteria andModUserGreaterThanOrEqualTo(String value) {
            addCriterion("mod_user >=", value, "modUser");
            return (Criteria) this;
        }

        public Criteria andModUserLessThan(String value) {
            addCriterion("mod_user <", value, "modUser");
            return (Criteria) this;
        }

        public Criteria andModUserLessThanOrEqualTo(String value) {
            addCriterion("mod_user <=", value, "modUser");
            return (Criteria) this;
        }

        public Criteria andModUserLike(String value) {
            addCriterion("mod_user like", value, "modUser");
            return (Criteria) this;
        }

        public Criteria andModUserNotLike(String value) {
            addCriterion("mod_user not like", value, "modUser");
            return (Criteria) this;
        }

        public Criteria andModUserIn(List<String> values) {
            addCriterion("mod_user in", values, "modUser");
            return (Criteria) this;
        }

        public Criteria andModUserNotIn(List<String> values) {
            addCriterion("mod_user not in", values, "modUser");
            return (Criteria) this;
        }

        public Criteria andModUserBetween(String value1, String value2) {
            addCriterion("mod_user between", value1, value2, "modUser");
            return (Criteria) this;
        }

        public Criteria andModUserNotBetween(String value1, String value2) {
            addCriterion("mod_user not between", value1, value2, "modUser");
            return (Criteria) this;
        }

        public Criteria andModUserIdIsNull() {
            addCriterion("mod_user_id is null");
            return (Criteria) this;
        }

        public Criteria andModUserIdIsNotNull() {
            addCriterion("mod_user_id is not null");
            return (Criteria) this;
        }

        public Criteria andModUserIdEqualTo(Long value) {
            addCriterion("mod_user_id =", value, "modUserId");
            return (Criteria) this;
        }

        public Criteria andModUserIdNotEqualTo(Long value) {
            addCriterion("mod_user_id <>", value, "modUserId");
            return (Criteria) this;
        }

        public Criteria andModUserIdGreaterThan(Long value) {
            addCriterion("mod_user_id >", value, "modUserId");
            return (Criteria) this;
        }

        public Criteria andModUserIdGreaterThanOrEqualTo(Long value) {
            addCriterion("mod_user_id >=", value, "modUserId");
            return (Criteria) this;
        }

        public Criteria andModUserIdLessThan(Long value) {
            addCriterion("mod_user_id <", value, "modUserId");
            return (Criteria) this;
        }

        public Criteria andModUserIdLessThanOrEqualTo(Long value) {
            addCriterion("mod_user_id <=", value, "modUserId");
            return (Criteria) this;
        }

        public Criteria andModUserIdIn(List<Long> values) {
            addCriterion("mod_user_id in", values, "modUserId");
            return (Criteria) this;
        }

        public Criteria andModUserIdNotIn(List<Long> values) {
            addCriterion("mod_user_id not in", values, "modUserId");
            return (Criteria) this;
        }

        public Criteria andModUserIdBetween(Long value1, Long value2) {
            addCriterion("mod_user_id between", value1, value2, "modUserId");
            return (Criteria) this;
        }

        public Criteria andModUserIdNotBetween(Long value1, Long value2) {
            addCriterion("mod_user_id not between", value1, value2, "modUserId");
            return (Criteria) this;
        }

        public Criteria andModDtIsNull() {
            addCriterion("mod_dt is null");
            return (Criteria) this;
        }

        public Criteria andModDtIsNotNull() {
            addCriterion("mod_dt is not null");
            return (Criteria) this;
        }

        public Criteria andModDtEqualTo(Date value) {
            addCriterion("mod_dt =", value, "modDt");
            return (Criteria) this;
        }

        public Criteria andModDtNotEqualTo(Date value) {
            addCriterion("mod_dt <>", value, "modDt");
            return (Criteria) this;
        }

        public Criteria andModDtGreaterThan(Date value) {
            addCriterion("mod_dt >", value, "modDt");
            return (Criteria) this;
        }

        public Criteria andModDtGreaterThanOrEqualTo(Date value) {
            addCriterion("mod_dt >=", value, "modDt");
            return (Criteria) this;
        }

        public Criteria andModDtLessThan(Date value) {
            addCriterion("mod_dt <", value, "modDt");
            return (Criteria) this;
        }

        public Criteria andModDtLessThanOrEqualTo(Date value) {
            addCriterion("mod_dt <=", value, "modDt");
            return (Criteria) this;
        }

        public Criteria andModDtIn(List<Date> values) {
            addCriterion("mod_dt in", values, "modDt");
            return (Criteria) this;
        }

        public Criteria andModDtNotIn(List<Date> values) {
            addCriterion("mod_dt not in", values, "modDt");
            return (Criteria) this;
        }

        public Criteria andModDtBetween(Date value1, Date value2) {
            addCriterion("mod_dt between", value1, value2, "modDt");
            return (Criteria) this;
        }

        public Criteria andModDtNotBetween(Date value1, Date value2) {
            addCriterion("mod_dt not between", value1, value2, "modDt");
            return (Criteria) this;
        }

        public Criteria andCreateUserIsNull() {
            addCriterion("create_user is null");
            return (Criteria) this;
        }

        public Criteria andCreateUserIsNotNull() {
            addCriterion("create_user is not null");
            return (Criteria) this;
        }

        public Criteria andCreateUserEqualTo(String value) {
            addCriterion("create_user =", value, "createUser");
            return (Criteria) this;
        }

        public Criteria andCreateUserNotEqualTo(String value) {
            addCriterion("create_user <>", value, "createUser");
            return (Criteria) this;
        }

        public Criteria andCreateUserGreaterThan(String value) {
            addCriterion("create_user >", value, "createUser");
            return (Criteria) this;
        }

        public Criteria andCreateUserGreaterThanOrEqualTo(String value) {
            addCriterion("create_user >=", value, "createUser");
            return (Criteria) this;
        }

        public Criteria andCreateUserLessThan(String value) {
            addCriterion("create_user <", value, "createUser");
            return (Criteria) this;
        }

        public Criteria andCreateUserLessThanOrEqualTo(String value) {
            addCriterion("create_user <=", value, "createUser");
            return (Criteria) this;
        }

        public Criteria andCreateUserLike(String value) {
            addCriterion("create_user like", value, "createUser");
            return (Criteria) this;
        }

        public Criteria andCreateUserNotLike(String value) {
            addCriterion("create_user not like", value, "createUser");
            return (Criteria) this;
        }

        public Criteria andCreateUserIn(List<String> values) {
            addCriterion("create_user in", values, "createUser");
            return (Criteria) this;
        }

        public Criteria andCreateUserNotIn(List<String> values) {
            addCriterion("create_user not in", values, "createUser");
            return (Criteria) this;
        }

        public Criteria andCreateUserBetween(String value1, String value2) {
            addCriterion("create_user between", value1, value2, "createUser");
            return (Criteria) this;
        }

        public Criteria andCreateUserNotBetween(String value1, String value2) {
            addCriterion("create_user not between", value1, value2, "createUser");
            return (Criteria) this;
        }

        public Criteria andCreateUserIdIsNull() {
            addCriterion("create_user_id is null");
            return (Criteria) this;
        }

        public Criteria andCreateUserIdIsNotNull() {
            addCriterion("create_user_id is not null");
            return (Criteria) this;
        }

        public Criteria andCreateUserIdEqualTo(Long value) {
            addCriterion("create_user_id =", value, "createUserId");
            return (Criteria) this;
        }

        public Criteria andCreateUserIdNotEqualTo(Long value) {
            addCriterion("create_user_id <>", value, "createUserId");
            return (Criteria) this;
        }

        public Criteria andCreateUserIdGreaterThan(Long value) {
            addCriterion("create_user_id >", value, "createUserId");
            return (Criteria) this;
        }

        public Criteria andCreateUserIdGreaterThanOrEqualTo(Long value) {
            addCriterion("create_user_id >=", value, "createUserId");
            return (Criteria) this;
        }

        public Criteria andCreateUserIdLessThan(Long value) {
            addCriterion("create_user_id <", value, "createUserId");
            return (Criteria) this;
        }

        public Criteria andCreateUserIdLessThanOrEqualTo(Long value) {
            addCriterion("create_user_id <=", value, "createUserId");
            return (Criteria) this;
        }

        public Criteria andCreateUserIdIn(List<Long> values) {
            addCriterion("create_user_id in", values, "createUserId");
            return (Criteria) this;
        }

        public Criteria andCreateUserIdNotIn(List<Long> values) {
            addCriterion("create_user_id not in", values, "createUserId");
            return (Criteria) this;
        }

        public Criteria andCreateUserIdBetween(Long value1, Long value2) {
            addCriterion("create_user_id between", value1, value2, "createUserId");
            return (Criteria) this;
        }

        public Criteria andCreateUserIdNotBetween(Long value1, Long value2) {
            addCriterion("create_user_id not between", value1, value2, "createUserId");
            return (Criteria) this;
        }

        public Criteria andCreateDtIsNull() {
            addCriterion("create_dt is null");
            return (Criteria) this;
        }

        public Criteria andCreateDtIsNotNull() {
            addCriterion("create_dt is not null");
            return (Criteria) this;
        }

        public Criteria andCreateDtEqualTo(Date value) {
            addCriterion("create_dt =", value, "createDt");
            return (Criteria) this;
        }

        public Criteria andCreateDtNotEqualTo(Date value) {
            addCriterion("create_dt <>", value, "createDt");
            return (Criteria) this;
        }

        public Criteria andCreateDtGreaterThan(Date value) {
            addCriterion("create_dt >", value, "createDt");
            return (Criteria) this;
        }

        public Criteria andCreateDtGreaterThanOrEqualTo(Date value) {
            addCriterion("create_dt >=", value, "createDt");
            return (Criteria) this;
        }

        public Criteria andCreateDtLessThan(Date value) {
            addCriterion("create_dt <", value, "createDt");
            return (Criteria) this;
        }

        public Criteria andCreateDtLessThanOrEqualTo(Date value) {
            addCriterion("create_dt <=", value, "createDt");
            return (Criteria) this;
        }

        public Criteria andCreateDtIn(List<Date> values) {
            addCriterion("create_dt in", values, "createDt");
            return (Criteria) this;
        }

        public Criteria andCreateDtNotIn(List<Date> values) {
            addCriterion("create_dt not in", values, "createDt");
            return (Criteria) this;
        }

        public Criteria andCreateDtBetween(Date value1, Date value2) {
            addCriterion("create_dt between", value1, value2, "createDt");
            return (Criteria) this;
        }

        public Criteria andCreateDtNotBetween(Date value1, Date value2) {
            addCriterion("create_dt not between", value1, value2, "createDt");
            return (Criteria) this;
        }

        public Criteria andDeleteClassIsNull() {
            addCriterion("delete_class is null");
            return (Criteria) this;
        }

        public Criteria andDeleteClassIsNotNull() {
            addCriterion("delete_class is not null");
            return (Criteria) this;
        }

        public Criteria andDeleteClassEqualTo(Boolean value) {
            addCriterion("delete_class =", value, "deleteClass");
            return (Criteria) this;
        }

        public Criteria andDeleteClassNotEqualTo(Boolean value) {
            addCriterion("delete_class <>", value, "deleteClass");
            return (Criteria) this;
        }

        public Criteria andDeleteClassGreaterThan(Boolean value) {
            addCriterion("delete_class >", value, "deleteClass");
            return (Criteria) this;
        }

        public Criteria andDeleteClassGreaterThanOrEqualTo(Boolean value) {
            addCriterion("delete_class >=", value, "deleteClass");
            return (Criteria) this;
        }

        public Criteria andDeleteClassLessThan(Boolean value) {
            addCriterion("delete_class <", value, "deleteClass");
            return (Criteria) this;
        }

        public Criteria andDeleteClassLessThanOrEqualTo(Boolean value) {
            addCriterion("delete_class <=", value, "deleteClass");
            return (Criteria) this;
        }

        public Criteria andDeleteClassIn(List<Boolean> values) {
            addCriterion("delete_class in", values, "deleteClass");
            return (Criteria) this;
        }

        public Criteria andDeleteClassNotIn(List<Boolean> values) {
            addCriterion("delete_class not in", values, "deleteClass");
            return (Criteria) this;
        }

        public Criteria andDeleteClassBetween(Boolean value1, Boolean value2) {
            addCriterion("delete_class between", value1, value2, "deleteClass");
            return (Criteria) this;
        }

        public Criteria andDeleteClassNotBetween(Boolean value1, Boolean value2) {
            addCriterion("delete_class not between", value1, value2, "deleteClass");
            return (Criteria) this;
        }

        public Criteria andValidClassIsNull() {
            addCriterion("valid_class is null");
            return (Criteria) this;
        }

        public Criteria andValidClassIsNotNull() {
            addCriterion("valid_class is not null");
            return (Criteria) this;
        }

        public Criteria andValidClassEqualTo(Boolean value) {
            addCriterion("valid_class =", value, "validClass");
            return (Criteria) this;
        }

        public Criteria andValidClassNotEqualTo(Boolean value) {
            addCriterion("valid_class <>", value, "validClass");
            return (Criteria) this;
        }

        public Criteria andValidClassGreaterThan(Boolean value) {
            addCriterion("valid_class >", value, "validClass");
            return (Criteria) this;
        }

        public Criteria andValidClassGreaterThanOrEqualTo(Boolean value) {
            addCriterion("valid_class >=", value, "validClass");
            return (Criteria) this;
        }

        public Criteria andValidClassLessThan(Boolean value) {
            addCriterion("valid_class <", value, "validClass");
            return (Criteria) this;
        }

        public Criteria andValidClassLessThanOrEqualTo(Boolean value) {
            addCriterion("valid_class <=", value, "validClass");
            return (Criteria) this;
        }

        public Criteria andValidClassIn(List<Boolean> values) {
            addCriterion("valid_class in", values, "validClass");
            return (Criteria) this;
        }

        public Criteria andValidClassNotIn(List<Boolean> values) {
            addCriterion("valid_class not in", values, "validClass");
            return (Criteria) this;
        }

        public Criteria andValidClassBetween(Boolean value1, Boolean value2) {
            addCriterion("valid_class between", value1, value2, "validClass");
            return (Criteria) this;
        }

        public Criteria andValidClassNotBetween(Boolean value1, Boolean value2) {
            addCriterion("valid_class not between", value1, value2, "validClass");
            return (Criteria) this;
        }

        public Criteria andRemarkIsNull() {
            addCriterion("remark is null");
            return (Criteria) this;
        }

        public Criteria andRemarkIsNotNull() {
            addCriterion("remark is not null");
            return (Criteria) this;
        }

        public Criteria andRemarkEqualTo(String value) {
            addCriterion("remark =", value, "remark");
            return (Criteria) this;
        }

        public Criteria andRemarkNotEqualTo(String value) {
            addCriterion("remark <>", value, "remark");
            return (Criteria) this;
        }

        public Criteria andRemarkGreaterThan(String value) {
            addCriterion("remark >", value, "remark");
            return (Criteria) this;
        }

        public Criteria andRemarkGreaterThanOrEqualTo(String value) {
            addCriterion("remark >=", value, "remark");
            return (Criteria) this;
        }

        public Criteria andRemarkLessThan(String value) {
            addCriterion("remark <", value, "remark");
            return (Criteria) this;
        }

        public Criteria andRemarkLessThanOrEqualTo(String value) {
            addCriterion("remark <=", value, "remark");
            return (Criteria) this;
        }

        public Criteria andRemarkLike(String value) {
            addCriterion("remark like", value, "remark");
            return (Criteria) this;
        }

        public Criteria andRemarkNotLike(String value) {
            addCriterion("remark not like", value, "remark");
            return (Criteria) this;
        }

        public Criteria andRemarkIn(List<String> values) {
            addCriterion("remark in", values, "remark");
            return (Criteria) this;
        }

        public Criteria andRemarkNotIn(List<String> values) {
            addCriterion("remark not in", values, "remark");
            return (Criteria) this;
        }

        public Criteria andRemarkBetween(String value1, String value2) {
            addCriterion("remark between", value1, value2, "remark");
            return (Criteria) this;
        }

        public Criteria andRemarkNotBetween(String value1, String value2) {
            addCriterion("remark not between", value1, value2, "remark");
            return (Criteria) this;
        }

        public Criteria andUpdateTsIsNull() {
            addCriterion("update_ts is null");
            return (Criteria) this;
        }

        public Criteria andUpdateTsIsNotNull() {
            addCriterion("update_ts is not null");
            return (Criteria) this;
        }

        public Criteria andUpdateTsEqualTo(Date value) {
            addCriterion("update_ts =", value, "updateTs");
            return (Criteria) this;
        }

        public Criteria andUpdateTsNotEqualTo(Date value) {
            addCriterion("update_ts <>", value, "updateTs");
            return (Criteria) this;
        }

        public Criteria andUpdateTsGreaterThan(Date value) {
            addCriterion("update_ts >", value, "updateTs");
            return (Criteria) this;
        }

        public Criteria andUpdateTsGreaterThanOrEqualTo(Date value) {
            addCriterion("update_ts >=", value, "updateTs");
            return (Criteria) this;
        }

        public Criteria andUpdateTsLessThan(Date value) {
            addCriterion("update_ts <", value, "updateTs");
            return (Criteria) this;
        }

        public Criteria andUpdateTsLessThanOrEqualTo(Date value) {
            addCriterion("update_ts <=", value, "updateTs");
            return (Criteria) this;
        }

        public Criteria andUpdateTsIn(List<Date> values) {
            addCriterion("update_ts in", values, "updateTs");
            return (Criteria) this;
        }

        public Criteria andUpdateTsNotIn(List<Date> values) {
            addCriterion("update_ts not in", values, "updateTs");
            return (Criteria) this;
        }

        public Criteria andUpdateTsBetween(Date value1, Date value2) {
            addCriterion("update_ts between", value1, value2, "updateTs");
            return (Criteria) this;
        }

        public Criteria andUpdateTsNotBetween(Date value1, Date value2) {
            addCriterion("update_ts not between", value1, value2, "updateTs");
            return (Criteria) this;
        }

        public Criteria andInsertTsIsNull() {
            addCriterion("insert_ts is null");
            return (Criteria) this;
        }

        public Criteria andInsertTsIsNotNull() {
            addCriterion("insert_ts is not null");
            return (Criteria) this;
        }

        public Criteria andInsertTsEqualTo(Date value) {
            addCriterion("insert_ts =", value, "insertTs");
            return (Criteria) this;
        }

        public Criteria andInsertTsNotEqualTo(Date value) {
            addCriterion("insert_ts <>", value, "insertTs");
            return (Criteria) this;
        }

        public Criteria andInsertTsGreaterThan(Date value) {
            addCriterion("insert_ts >", value, "insertTs");
            return (Criteria) this;
        }

        public Criteria andInsertTsGreaterThanOrEqualTo(Date value) {
            addCriterion("insert_ts >=", value, "insertTs");
            return (Criteria) this;
        }

        public Criteria andInsertTsLessThan(Date value) {
            addCriterion("insert_ts <", value, "insertTs");
            return (Criteria) this;
        }

        public Criteria andInsertTsLessThanOrEqualTo(Date value) {
            addCriterion("insert_ts <=", value, "insertTs");
            return (Criteria) this;
        }

        public Criteria andInsertTsIn(List<Date> values) {
            addCriterion("insert_ts in", values, "insertTs");
            return (Criteria) this;
        }

        public Criteria andInsertTsNotIn(List<Date> values) {
            addCriterion("insert_ts not in", values, "insertTs");
            return (Criteria) this;
        }

        public Criteria andInsertTsBetween(Date value1, Date value2) {
            addCriterion("insert_ts between", value1, value2, "insertTs");
            return (Criteria) this;
        }

        public Criteria andInsertTsNotBetween(Date value1, Date value2) {
            addCriterion("insert_ts not between", value1, value2, "insertTs");
            return (Criteria) this;
        }
    }

    public static class Criteria extends GeneratedCriteria {

        protected Criteria() {
            super();
        }
    }

    public static class Criterion {
        private String condition;

        private Object value;

        private Object secondValue;

        private boolean noValue;

        private boolean singleValue;

        private boolean betweenValue;

        private boolean listValue;

        private String typeHandler;

        public String getCondition() {
            return condition;
        }

        public Object getValue() {
            return value;
        }

        public Object getSecondValue() {
            return secondValue;
        }

        public boolean isNoValue() {
            return noValue;
        }

        public boolean isSingleValue() {
            return singleValue;
        }

        public boolean isBetweenValue() {
            return betweenValue;
        }

        public boolean isListValue() {
            return listValue;
        }

        public String getTypeHandler() {
            return typeHandler;
        }

        protected Criterion(String condition) {
            super();
            this.condition = condition;
            this.typeHandler = null;
            this.noValue = true;
        }

        protected Criterion(String condition, Object value, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.typeHandler = typeHandler;
            if (value instanceof List<?>) {
                this.listValue = true;
            } else {
                this.singleValue = true;
            }
        }

        protected Criterion(String condition, Object value) {
            this(condition, value, null);
        }

        protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.secondValue = secondValue;
            this.typeHandler = typeHandler;
            this.betweenValue = true;
        }

        protected Criterion(String condition, Object value, Object secondValue) {
            this(condition, value, secondValue, null);
        }
    }
}